前言
引言
由于开发AT芯片进行脉冲计数时发现使用参数为结构体参数时会导致脉冲计数减少,查看汇编代码发现该编译器O0汇编代码访问结构体数据达到19个机器周期。使用O2优化时还是需要10个机器周期左右,因此对C函数调用、参数访问产生疑问。因此使用gcc、MinGW、MSVC三款编译器查看在x86平台上函数调用与结构体访问方式。
more >>VSCode中各种插件是编程利器,gcc是Linux系统中一款伟大的开源编译器,minGW是将gcc移植到Windows中。本文将介绍如何安装minGW编译器并使用VsCode编写C/C++测试代码。
MinGW-w64 - for 32 and 64 bit Windows
vsCode1.91.1
Windows 10 专业版
安装MinGW-W64提示cannot download repository.txt-解决方法_安装mingw时cannot download respository.txt-CSDN博客
[安装MinGW-W64提示cannot download repository.txt-阿里云开发者社区 (aliyun.com)](https://developer.aliyun.com/article/82492
MinGW-w64 离线包安装方法 - 1O(∩_∩)O1 - 博客园 (cnblogs.com)
安装MinGW分为两种在线安装、离线安装,在线安装本人并未成功,仅给出方法。




Windows环境变量可以让CMD识别某些命令,VScode使用minGW编译时是利用cmd运行minGW的编译器代码,如果不设置环境变量vscode执行minGW相关命令时将无法识别(详情见常见错误2-gcc命令无法识别)。环境变量配置分为用户变量与系统变量,可根据需要进行可选配置。(请保证VScode运行路径与环境变量配置一致,即使用用户权限启动vsCode时环境变量应该配置用户环境变量)

在用户环境变量中创建名为”MINGW64“(自定),变量值为解压的minGW文件中的bin文件路径。

将MINGW64环境变量加入用户环境变量PATH中(可选)
在环境变量中选中用户变量中的Path变量,点击编辑
在编辑界面加入MINGW64变量
%MINGW64

将MINGW64环境变量加入系统环境变量PATH中(可选)
在环境变量中选中系统变量中的Path变量,点击编辑
在编辑界面加入MINGW64变量
%MINGW64

vsCode默认使用msvc编译器,需要设置默认编译器为mingw64编译器。
使用vsCode插件C/C++插件的编辑器配置配置编译器路径。
Ctyl + shift + p

vsCode默认采用msvc模式进行关键字提醒,需要修改为gcc模式。

测试主要分为cmd测试与测试代码,每个测试分为用户环境与系统环境。
使用用户权限打开cmd(默认为用户权限)。
快捷键
win + r
在输入栏中输入cmd,点击回车
使用gcc -v查询gcc版本
搜索栏

搜索栏
在搜索栏输入CMD,选择“命令提示符”
右键鼠标,选择使用管理员打开(系统环境运行的CMD路径为C:\Windows\system32>)


使用vsCode编写helloWord并使用mainGW编译器编译。用户环境与系统环境只是打开vscode运行模式不一致,系统测试请将vsCode使用”以管理员“打开。
使用鼠标右键新建helloWord.c文件,并编写简单的helloWord打印程序。
使用gcc编译helloWord.c文件
gcc helloWord.c
gcc编译完成后文件名称默认为a.out
./a.out

使用minGW在线安装可能会出现缺乏reposiory.txt文件

有的人采用使用管理员安装可以解决,但有部分也无法解决。可以采用离线安装。
安装MinGW-W64提示cannot download repository.txt-解决方法_安装mingw时cannot download respository.txt-CSDN博客
安装MinGW-W64提示cannot download repository.txt-阿里云开发者社区 (aliyun.com)
VSCode使用minGW时显示无法找到编译器
设置环境变量,参考配置环境变量章节
【vscode】gcc : 无法将“gcc”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。请检查名称的拼写,如果包括路径,请确保路径正确,然后再试一次。-CSDN博客
无
如图 1.1 解压Keil5所示,解压“01点亮LED\02开发软件”。
图 1.1 解压Keil5
使用管理员身份运行“01点亮LED\02开发软件\Keil uvision5 MDKv518(64bit)”中mdk518安装包。如图 1.2 运行Keil5安装程序所示。
图 1.2 运行Keil5安装程序
在安装界面选择下一步。如图 1.3 安装Keil5所示。
图 1.3 安装Keil5
选择同意安装许可证,点击下一步。如图 1.4 安装Keil5所示。
图 1.4 安装Keil5
选择安装路径(建议不安装在C盘),点击下一步。如图 1.5 安装Keil5所示。
图 1.5 安装Keil5
配置安装用户(随便填),点击下一步。如图 1.6 安装Keil5所示。
图 1.6 安装Keil5
等待安装完成后点击下一步,如图 1.7 安装Keil5所示。
图 1.7 安装Keil5
选择取消Show Release Notes,点击Finish,Keil5安装完成。如图 1.8 安装Keil5所示。
图 1.8 安装Keil5
使用管理员运行Keil5,如图 1.9 运行keil5所示。
图 1.9 运行keil5
点击File->License Management,如图 1.10 破解keil5所示。
图 1.10 破解keil5
使用管理员运行“01点亮LED\02开发软件\Keil uvision5 MDKv518(64bit)/crack.exe”,如图 1.11 破解Keil5所示。
图 1.11 破解Keil5
复制License Management中的CID到crack中的CID,选择Target为ARM。如图 1.12 破解Keil5所示。
图 1.12 破解Keil5
点击Generate,如图 1.13 破解Keil5所示。
图 1.13 破解Keil5
复制生成的破解码到License Management中的New License ID Code中。点击Add LIC,如图 1.14 破解Keil5图 1.15 破解Keil5所示。
图 1.14 破解Keil5
图 1.15 破解Keil5
破解完成后Support Period中显示运行年月,如图 1.16 破解Keil5所示。
图 1.16 破解Keil5
将“01点亮LED\02开发软件/Keil.STM32F1xx_DFP.1.0.5”复制到安装Keil5路径中,如图 1.17 安装MDK所示。
图 1.17 安装MDK
使用管理员运行Keil.STM32F1xx_DFP.1.0.5,如图 1.18 安装MDK所示,点击下一步。
图 1.18 安装MDK
安装完成后点击Finish,如图 1.19 安装MDK所示。
图 1.19 安装MDK
暂无。
通过点亮LED测试开发环境是否搭建成功。
LED原理图如图 2.1 LED硬件原理图所示。PC13输出高电平LED熄灭,PC13输出低电平LED点亮。
图 2.1 LED硬件原理图
程序流程图如图 2.2 点亮LED流程图所示。
图 2.2 点亮LED流程图
int main(void)
{
led_init();//初始化
while(1)
{
GPIO_WriteBit(GPIOC,GPIO_Pin_13,Bit_SET);//输出高电平
delay_ms(1000);//延时
GPIO_WriteBit(GPIOC,GPIO_Pin_13,Bit_RESET);//输出低电平
delay_ms(1000);
}
}
如图 2.3 调试器选择所示,选择DAP调试器。
图 2.3 调试器选择
如图 2.4 识别DAP设备所示,点击Setting选项。如果Kiel5识别到DAP下载器会在SW Device中显示其ID号和驱动名称。
图 2.4 识别DAP设备
如图 2.5 配置DAP调试器所示,选择端口为SW,最高时钟为5MHz。
图 2.5 配置DAP调试器
如图 2.6 配置Flash Download所示,选择Flash Download配置为Low-density 16k。
图 2.6 配置Flash Download
如图 2.7 编译说明所示,1为编译当前文件;2为链接所有文件;3为编译且链接所有文件;4为调试器下载。配置完DAP调试器后,编译所有文件直到出现0error即可使用调试器下载。如图 2.8 编译完成所示。
图 2.7 编译说明
图 2.8 编译完成
如图 2.9 下载完成所示,调试器将程序下载到STM32F103芯片的Flash中,点击复位按键程序就会重main函数开始运行。
图 2.9 下载完成
如图 2.10 C6T6实物图所示,框选位置为复位按键。
图 2.10 C6T6实物图
复位后如图 2.11 实物演示所示。LED(黄)一秒闪烁一次。
图 2.11 实物演示
使用github pages + hexo搭建个人博客网站。
GitHub Pages 是通过 GitHub 托管和发布的公共网页,可以使用github账号免费创建“username.github.io”站点。详情查看“GitHub Pages 快速入门 - GitHub 文档”
Hexo 是一个快速、简洁且高效的博客框架(随便找的),Hexo使用简单的命令就可以将本地文章部署到设定的网站中。详情查看“文档 | Hexo”。
more >>[toc]
word用于丰富的格式设置,使用模板功能可以使得只需要设置一次格式即可多次使用。利用word常用的格式可以利用我们写出更美观的文章。
word2019
Word中自己制作三线表样式,为论文撰写提高效率!_word中怎么设置三线表-CSDN博客
markDown图片转Base64编码工具说明-CSDN博客
本文章绑定一份毕业论文模板。
| CSDN资源 | 5积分 | 毕业论文模板,包含基本样式资源-CSDN文库 |
|---|---|---|
| 百度网盘资源 | 无要求 | 链接:https://pan.baidu.com/s/1Pbq_CasIavq7cKonRzyzlw?pwd=s8eh 提取码:s8eh |
本文章以一份xx学校xx年毕业论文格式为标准
略。请自行安装,本文设置均为基础设置,不同版本绝大部分配置是相同的。(可能低版本或高版本界面不同、界面更丰富或更简洁)
多级标题为自动化章节、自动编号的前置条件。需要提前设置。
由于多级列表是对多个列表编号完成,因此设置多级列表需要新建列表。(wrod提供的列表样式足可以完成绝大部分样式需求,无需要可跳过)。在段落列表点击编号->点击定义新编号格式。
在新编号格式中可以设置,编号样式、字体、编号格式、对齐方式。(由于本次参考模板不使用自建编号,不在进行详细介绍)。
在段落列表点击编号->点击定义新的多级列表。
设置所有级别->所有缩进设置为0(该缩进为标号位置设置)
设置标号缩进后如下图所示(所有级别缩进为0)
点击更多->链接样式->设置编号后字符(本参考采用默认标题样式、五级标题、编号后字符为空格)
使用多级编号图表可以更方便管理图表。
引用->插入题注
在题注设置界面新建标签->图
编号->包含章节号
在题注设置界面新建标签->表
编号->包含章节号
正文详细格式见附录,点击样式下拉菜单,创建新样式。
点击创建样式。
设置样式名称为论文正文,点击修改。
样式基准选择无样式,中文字体选择宋体小四,对齐方式选择两端对齐。(无样式保证本样式独立不会受其它样式影响,两端对齐主要用于调整论文格式中中文与非中文的间距一致且在行末尾不会出现缺少字符)。
西方字体选择Times New Roman。
点击格式->段落
在缩进和间距中选择首行2字符, 行距选择1.5倍
在换行和分页勾选段中不分页。
在中文版式中勾选允许西文在单词中间换行。(该配置和两端对齐可以使每行字符数量一致)
点击格式选择快捷键
选择快捷键后按下按键即可进行快捷键配置、点击指定配置快捷键。
本文使用Ctrl+Shift+Z为论文正文样式。
本文仅展示标题1设置且不对标题字体、行距进行设置,选择标题1点击修改。
样式基准选择无样式,后续段落样式选择论文正文(该选项为标题回车后样式)
在格式->段落中换行和分页勾选段前分页(该选项相当于在标题前插入分页符,一般用于一级标题)
在引用界面点击目录选择自定义目录。
目录界面常规选择来自模板,显示级别设置为3。
点击修改,设置TOC1。(之前级别为3因此需要设置TOC1-TOC3,这里以TOC1设置为例)。
设置基准样式基准、字体格式等。
模板目录缩进为左缩进需要替换为首行缩进。
插入后并在目录末尾插入分节符,如下图所示。
双击页面底部进入页眉和页脚界面,取消链接到前一节(页眉页脚通过节进行连续设置,如果希望出现多种页眉页脚需要使用分节符进行分割且取消链接到前一节)
选择页码->页面底端->数字2(该设置为页码在页面底端居中)
设置完成后如下图所示。
页眉设置如页码设置。(双击页面头部进入页眉界面)。
点击插入->表格,创建任意表格。选中表格,点击表设计。
打开表格下拉菜单。
点击新见表格样式。
创建三线表,选中整个表格,设置1.5磅上下框线、宋体5号
选中标题行,点击格式->边框与底纹。
选中1磅设置下框线,点击1.5榜设置上框线。
点击表格、选中三线表样式。
点击文件->选项
点击保存->默认个人模板位置。将模板文件(word文件)放在模板位置即可。
打开word。
选择更多模板
windows提供快捷键打开桌面快捷方式。(只能在桌面的快捷方式可以设置快捷键)。右键点击word快捷方式,选择属性,点击快捷方式,即可设置快捷方式。设置完成后即可用快捷方式打开word。
无。
| Ctrl + 1 | 标题1 |
|---|---|
| Ctrl + 2 | 标题2 |
| Ctrl + 3 | 标题3 |
| Ctrl + 4 | 标题4 |
| Ctrl + 5 | 标题5 |
| Ctrl + Shift + Z | 论文正文 |
| Ctrl + Shift + J | 无序号一级标题 |
| Ctrl + Shift + K | 关键字 |
| Ctrl + Shift + T | 题注 |
tag:
缺失模块。
1、请确保node版本大于6.2
2、在博客根目录(注意不是yilia根目录)执行以下命令:
npm i hexo-generator-json-content --save
3、在根目录_config.yml里添加配置:
jsonContent:
meta: false
pages: false
posts:
title: true
date: true
path: true
text: false
raw: false
content: false
slug: false
updated: false
comments: false
link: false
permalink: false
excerpt: false
categories: false
tags: true